feat(catalog): add Staff Engineer Mode#146
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces the 'Staff Engineer Mode' plugin, which provides structured, staff-level engineering guidance for AI coding agents across domains like architecture, reliability, and security. The changes include updating the marketplace metadata, README, and adding a comprehensive library of specialist guidance files. A script update was also included to handle extra mirror paths for this plugin. Feedback was provided regarding a potential crash in the plugin generation script due to unsafe dictionary access for plugin metadata, which has been addressed with a specific code suggestion.
| for extra_path in EXTRA_MIRROR_PATHS.get(f"{plugin['owner']}/{plugin['repo']}", ()): | ||
| add_recursive_selection(selected, all_names, plugin_root, extra_path) |
There was a problem hiding this comment.
The code accesses plugin['owner'] and plugin['repo'] directly. However, based on the plugins.json diff, existing plugin entries (like 'Stark' or 'Spec-Driven Development') do not contain these keys. This will cause a KeyError and crash the script when processing those plugins. It is safer to use .get() to handle cases where these keys are missing.
| for extra_path in EXTRA_MIRROR_PATHS.get(f"{plugin['owner']}/{plugin['repo']}", ()): | |
| add_recursive_selection(selected, all_names, plugin_root, extra_path) | |
| plugin_id = f"{plugin.get('owner', '')}/{plugin.get('repo', '')}" | |
| for extra_path in EXTRA_MIRROR_PATHS.get(plugin_id, ()): | |
| add_recursive_selection(selected, all_names, plugin_root, extra_path) |
There was a problem hiding this comment.
Checked this against the generator path. collect_selected_paths() receives plugin objects from parse_plugins(), not records read back from generated plugins.json. parse_plugins() sets both owner and repo for every parsed README entry, and a local check returned plugins=83 missing_owner_or_repo=0.
The direct indexing is intentional here: missing owner or repo would mean the parser produced an invalid plugin object, and using .get() would silently skip required extra mirror paths instead of surfacing that invariant failure. No code change.
| - [Secret Guard](./plugins/mturac/secret-guard) - Pre-commit secret scanner using pattern and entropy detection. | ||
| - [Session Orchestrator](https://github.com/Kanevry/session-orchestrator) - Session orchestration for Claude Code, Codex, and Cursor IDE — structured planning, wave-based execution, VCS integration (GitLab + GitHub), quality gates, and clean session close-out with issue tracking. | ||
| - [Spec-Driven Development](https://github.com/Habib0x0/spec-driven-plugin) - Three-phase Requirements → Design → Tasks workflow for Claude Code and Codex — EARS notation acceptance criteria, autonomous execution loop, cross-spec dependencies, and post-implementation acceptance testing. | ||
| - [Staff Engineer Mode](https://github.com/sirmarkz/staff-engineer-mode) - Routes engineering design, delivery, reliability, security, operations, and maintenance prompts to focused staff-level specialist guidance for AI coding agents. |
There was a problem hiding this comment.
SUGGESTION: README entries are not in alphabetical order — "Staff Engineer Mode" should appear before "Spec-Driven Development"
The check-alphabetical.py script would catch this failure.
Correct order in the "Development & Workflow" subsection:
- [Session Orchestrator]
- [Staff Engineer Mode] ← should be here
- [Spec-Driven Development]
- [Standup Generator]
- [Stark]
The issue is that ‘staff engineer mode’ < ‘spec-driven development’ in case-insensitive alphabetical order (character 4: ‘f’ < ‘p’). Currently the new entry is inserted after Spec-Driven (line 158), which breaks the list’s expected sort order.
There was a problem hiding this comment.
Checked against the repository checker and a case-insensitive sort. The current README order is correct: Spec-Driven Development sorts before Staff Engineer Mode because spec... comes before staff... (p < t).
Verification:
python3 scripts/check-alphabetical.py README.mdpasses withDevelopment & Workflowat 51 items.printf "%s\\n" "Spec-Driven Development" "Staff Engineer Mode" | sort -foutputsSpec-Driven Developmentfirst.
No README move.
Code Review SummaryStatus: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)SUGGESTION
Correct order needed in the Development & Workflow section: Files Reviewed (5 changed, many new)
Reviewed by nemotron-3-super-120b-a12b-20230311:free · 149,526 tokens |
|
Review bot feedback checked. No code changes from the bot comments:
Also re-ran |
|
Refreshed the Staff Engineer Mode SVG icon. What changed:
Validation:
|
Summary
.codexignore.specialists/directory so future syncs keep the mirrored bundle installable.Validation
python3 scripts/check-alphabetical.py README.mdpython3 scripts/validate-plugin-pr.py --base-ref origin/mainpython3 -m json.tool plugins.json >/dev/nullpython3 -m json.tool .agents/plugins/marketplace.json >/dev/nullpython3 -m py_compile scripts/generate_plugins_json.py scripts/validate-plugin-pr.py scripts/check-alphabetical.pygit diff --cached --name-only --diff-filter=ACMRTUXB -z | xargs -0r detect-secrets-hook --